package com.sise.parkinglot.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.sise.parkinglot.bean.CodeMsg;
import com.sise.parkinglot.entity.Park;
import com.sise.parkinglot.entity.SitInfo;

import java.util.List;
import java.util.Map;

/**
 * @author ZJ
 */
public interface ISitInfoService extends IService<SitInfo> {

    /**
     * @param map 获取参数
     * @return 车位列表
     */
    CodeMsg<List<SitInfo>> querySitList(Map<String, Object> map);

    /**
     * @param sitInfo 车位信息
     * @return 添加车位
     */
    CodeMsg<String> addSit(SitInfo sitInfo);

    /**
     * @param stationIds 车位Id
     * @param state      状态
     * @return 车位不可用
     */
    CodeMsg<String> updateState(int[] stationIds, int state);

    /**
     * @param stationIds 车位Id
     * @return 删除车位
     */
    CodeMsg<String> removeSit(int[] stationIds);

    /**
     * @param sitInfo 车位信息
     * @return 更新车位
     */
    CodeMsg<String> updateSit(SitInfo sitInfo);

    /**
     * @param map 用户数据
     * @return 车位信息
     */
    CodeMsg<SitInfo> getParkingLot(Map<String, String> map);

    /**
     * @param map 用户数据
     * @return 是否停车
     */
    CodeMsg<SitInfo> isParkingLot(Map<String, String> map);

    /**
     * @param map 用户参数
     * @return 返回停车记录
     */
    CodeMsg<Park> endParkingLot(Map<String, String> map);
}
